安装APIGateway ESBServer前,请先安装APIGateway Governor! 

# 安装

  1. 创建“D:/primeton/APIGateway/Primeton_APIGateway_9.0_LA_ESBServer”目录。
  2. 用解压工具将 “Primeton_APIGateway_9.0_LA_ESBServer.zip” 解压至 “Primeton_APIGateway_9.0_LA_ESBServer” 目录。

# 放置License许可文件

  1. APIGateway ESBServer缺省带的许可有五个并发限制,可满足项目开发需要;若项目做性能测试,默认许可不满足要求时,请联系普元客服(cservice@primeton.com (opens new window))申请临时License。
  2. 将申请到的许可证“primetonlicense.xml”文件拷贝到${APIGateway ESBServer安装目录}/server/EOS/_srv文件夹下,例如:D:/primeton/APIGateway/Primeton_APIGateway_9.0_LA_ESBServer/server/EOS/_srv。

# 配置

  1. 将数据库驱动包拷贝到“${APIGateway ESBServer安装目录下}/server/libs”目录下。

    说明:

    1).查看1.1 安装须知 ,检查您所需要的数据库驱动包是否已被内置在产品中。如下图 如果没有内置,则需要删除对应数据库已内置的数据库驱动包版本,放入自己所需要的数据库驱动包 例如:您需要连接的数据库是Mysql 8,但是产品已内置的是Mysql 5的驱动包。您需要将Mysql 8的驱动包拷贝到${APIGateway-governor安装目录}/lib下,然后手动删除${APIGateway-governor安装目录}/lib目录下已内置的Mysql 5的驱动包。

  2. 在“${APIGateway ESBServer安装目录}/server/bin/start.sh”文件,设置“JAVA_HOME”的值为本地JDK1.8 版本路径。

 set JAVA_HOME=C:\jdk1.8.0_251
  1. 修改“${APIGateway ESBServer安装目录}/server/conf/application.yml”配置文件,参照如下表格配置参数,表格中未说明的参数用默认值即可。
server:
  port: 6200
  app-server:
    min-spare-threads: 100
    max-threads: 500
    max-connections: 1000
    accept-count: 200
    basedir: ${user.dir}
    accesslog:
      enabled: true
      pattern: "%t [%a] [%b] [%m] [%s] [%D] [%S] [%I][%H://%v%U%q]"
      file-date-format: .yyyy-MM-dd
      directory: ../logs
      prefix: pas_access_log
      suffix: .log
 
spring:
  autoconfigure:
    exclude: org.springframework.boot.autoconfigure.elasticsearch.rest.RestClientAutoConfiguration
  jpa:
    hibernate:
      ddl-auto: none
    properties:
      database: MYSQL
      hibernate:
        dialect: org.hibernate.dialect.MySQLDialect
        enable_lazy_load_no_trans: true
  datasource:
    druid:
      filter:
        config:
          enabled: false
      stat-view-servlet:
        enabled: false
      web-stat-filter:
        enabled: false
      username: root
      password: 123456
      url: jdbc:mysql://127.0.0.1:3306/esb?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false
      driver-class-name: com.mysql.jdbc.Driver
      max-active: 20
      min-idle: 10
      query-timeout: 5
      testWhileIdle: true
      timeBetweenEvictionRunsMillis: 60000
      validationQuery: select 1 from eos_unique_table
      max-wait: 5000
      max-wait-thread-count: 10
      validation-query-timeout: 3
      transaction-query-timeout: 5
  redis:
    enable: false
    timeout: 5000
    host: 127.0.0.1
    port: 6379
    password: 123456
    pool:
      max-wait: 10000
      max-active: 500
      min-idle: 50
      max-idle: 250
esb:
  path:
    ignored:
      - /favicon.ico #默认配置,不可删除
  jms:
    timeout: 300 #单位秒
  policy-data-init-time:
    #分别可以按天,小时,分钟,秒为单位,设置每次执行同步程序相隔的时间。
    #例如,设置间隔时间为一天,Days=1,Hours=24,Minutes=60,Seconds=60
    days: 1
    hours: 24
    minutes: 60
    seconds: 60
    #以下hour,min,sec为设置同步程序的启动时间。
    #例如,16:30:00启动程序,hour=16,min=30,sec=00
    hour: 12
    min: 0
    sec: 0
  collector:
    global:
      intervalTime: 10000 #单位ms
    sys:
      resource:
        enabled: true
      thread:
        enabled: true
    module:
      state:
        enabled: true
      thread:
        enabled: true
      endpoint:
        enabled: true
    mq:
      state:
        enabled: true
  database:
    init: false
    #强制初始化
    enforceInit: false
 
elasticsearch:
  enabled: true
  ioThreadCount: 50
  connectTimeout: 60000 #单位ms
  maxTotal: 10000
  maxPerRoute: 1000
  numberOfShards: 1
  numberOfReplicas: 0
  refreshInterval: 10s
  username: elastic
  password: primeton000000
  certificate: F:/http_ca.crt
  hosts:
  - ip: 127.0.0.1
    port: 9200
    protocol: https
eos:
  application:
    sys-code: EOS-DEMO-SYS
    sys-key: dc6baaed30e541d78bb91274803d9432
sms:
  #service-url: http://unify1.gx.cmcc:10024/SmsMonitor/jsonsms
  service-url: http://127.0.0.1:10024/SmsMonitor/jsonsms
参数 说明
spring.datasource.druid.username 数据库用户名,根据实际环境修改。
spring.datasource.druid.password 数据库用户密码,根据实际环境修改。
spring.datasource.druid.url 访问数据库的JDBC URL,根据实际环境修改。
spring.datasource.druid.driver-class-name 数据库驱动。
spring.redis.enable 是否使用Redis,集群模式下使用频度控制并需要统一计数时配置true,否则false。
spring.redis.timeout Redis连接超时时间。
spring.redis.host Redis服务IP。
spring.redis.port Redis服务端口。
elasticsearch.enabled 是否使用ElasticSearch作为日志存储,默认为false。
elasticsearch.hosts.ip 配置成安装ElasticSearch的机器IP地址。
elasticsearch.hosts.port ElasticSearch 的启动端口号。默认为9200,需要和1.2 Elasticsearch中“elasticsearch-8.1.2/config/elasticsearch.yml”文件中配置的http.port一致。
elasticsearch.username ElasticSearch 的访问用户名,默认为elastic
elasticsearch.password ElasticSearch 的访问密码,密码为安装elasticsearch时设置的密码
elasticsearch.certificate ElasticSearch的证书,该证书为elasticsearch-8.1.2/config/certs下的http_ca.crt文件,文件位置需配置绝对路径
esb.collector.global.intervalTime APIGateway ESBServer的日志采集时间默认10000ms,单位毫秒
esb.collector.sys.resource.enabled 是否采集系统的资源数据(CPU、内存等),默认为true。
esb.collector.sys.thread.enabled 是否采集系统的线程数据,默认为true。
esb.collector.module.state.enabled 是否采集模型的统计数据,默认为true。
esb.collector.module.thread.enabled 是否采集模型的线程数据,默认为true。
esb.collector.module.endpoint.enabled 是否采集模型的endpoint数据,默认为true。
esb.collector.mq.state.enabled 是否采集MQ的统计数据,默认为true。

4.注:如果是PostgreSQL,需要增加配置 spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults =false

# 验证

  1. 在${APIGateway ESBServer安装目录}下,执行如下命令,启动APIGateway ESBServer。
# startServer.bat 
  1. 当启动界面出现“APIGateway ESBServer started successfully ”,表示APIGateway ESBServer启动成功。
  2. 进入${APIGateway ESBServer安装目录}\server\EOS_srv目录,打开startup.conf文件,查看localIP是否刷新为server安装所在服务器IP,如未刷新,手动修改localIP为server安装所在服务器IP并重启server。(多网卡情况下关闭多余网卡)
#Fri Oct 13 14:10:48 GMT+08:00 2023
AdminPort=6200
LocalIP=0.0.0.0
ESB_SERVER_ID=esbserver

# 卸载

  1. 在“${APIGateway ESBServer安装目录}/server/bin/stop.bat文件,设置“JAVA_HOME”的值为本地JDK1.8 版本路径。
set JAVA_HOME=C:\jdk1.8.0_251
  1. 在${APIGateway ESBServer安装目录}下,执行如下命令,停止APIGateway ESBServer服务。
# stopServer.bat 
  1. 停止服务后,可以直接删除${APIGateway ESBServer安装目录}进行卸载。